﻿//===================================================================================
// Copyright (c) Ryan Garrett.  All rights reserved.
// THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY
// OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT
// LIMITED TO THE IMPLIED WARRANTIES OF MERCHANTABILITY AND
// FITNESS FOR A PARTICULAR PURPOSE.
//===================================================================================

using System;

namespace Caffeine.Core.Test.TestModel
{
    public class ModelForFieldTestingC : ModelForFieldTestingB
    {
        [ModelBackingProperty(typeof(String), "StringPropertyC", ModelBase.StandardBehaviors, false)]
        protected readonly ModelProperty<String> _stringPropertyC = null;

        public ModelProperty<String> StringPropertyC
        {
            get { return _stringPropertyC; }
        }

        [ModelBackingProperty(typeof(ModelForFieldTestingC), "ChildC", ModelBase.StandardBehaviors, false)]
        protected readonly ModelProperty<ModelForFieldTestingC> _childC = null;

        public ModelProperty<ModelForFieldTestingC> ChildC
        {
            get { return _childC; }
        }

        [ModelBackingProperty(typeof(ModelForFieldTestingC), "CollectionC", ModelBase.StandardBehaviors, true)]
        protected readonly ModelCollection<ModelForFieldTestingC> _collectionC = null;

        public ModelCollection<ModelForFieldTestingC> CollectionC
        {
            get { return _collectionC; }
        }
    }
}
